<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
  <style>
    div{
      width: 100px;
      height: 100px;
      border: 1px solid red;
    }
    #d1{
      margin: 50px;
      /*单独某一个方向添加外边距*/
      margin-top: 50px;
      margin-left: 30px;
      margin-bottom: 50px;
      margin-right: 50px;
      margin: 30px;/*四个方向赋值*/
      margin: 50px 100px;/*上下和左右赋值*/
      margin: 10px 20px 30px 40px;/*上右下左*/
    }
    /*兄弟元素上下相邻, 彼此添加外边距 取最大值*/
    #d2{margin-top: 20px}
    /*左右相邻彼此添加外边距两者相加*/
    /*行内元素上下外边距无效*/
    #s1{margin-right: 50px;}
    #s2{margin-left: 50px}

    #big{
      width: 200px;
      height: 200px;
      background-color: green;
      /*添加overflow:hidden样式解决粘连问题*/
      overflow: hidden;
    }
    #big>div{
      width: 50px;
      height: 50px;
      background-color: blue;
      /*父子元素上边缘重叠时, 添加外边距取最大值,会导致父子元素粘连在一起*/
      margin-top: 50px;
    }
  </style>
</head>
<body>
<div id="big">
  <div></div>
</div>
<span id="s1">span1</span>
<span id="s2">span2</span>

<div id="d1">div1</div>
<div id="d2">div2</div>
</body>
</html>